package com.itheima.d1_inner_class1;

/*
    内部类就是类中类
 */
public class Demo {
    public static void main(String[] args) {
        // 目标：了解成员内部类和其特点。
        Car.Engine engine = new Car().new Engine();
        engine.start();
    }
}

//车
class Car{ //外部类
    private String name = "外部类的name";

    public void run() {
        System.out.println("车在高速上疾驰～");
    }

    //引擎
    public class Engine { //内部类
        private String name = "内部类成员变量name";

        public void start() {
            String name ="局部变量name";

            System.out.println("引擎启动～");

            //访问外部类成分时，省略了 外部类名.this，如果不冲突，可以省略
//            System.out.println(name);
//            System.out.println(Car.this.name);
            System.out.println("name = " + name); //局部变量
            System.out.println("this.name = " + this.name); //本类成员变量
            System.out.println("Car.this.name = " + Car.this.name); //外部类成员变量

            run();
        }
    }
}
